<!doctype html>
<meta charset="utf-8" />

<head>
    <title>QuickSort</title>
    <script type="text/javascript"></script>
</head>

<body>
    <span>随机情况测试数据：</span><span id="test1">70,68,86,44,87,12,2,1,53,100</span>
    <br />
    <span>最坏情况测试数据：</span><span id="test2">10,9,8,7,6,5,4,3,2,1</span>
    <br /><button onclick="sort()">排序</button>
    <div>随机情况排序结果：</div>
    <div id="outs1"></div>

    <div>最坏情况排序结果：</div>
    <div id="outs2"></div>
    <script>
        var quickSort = function(arr) {

            　　
            if (arr.length <= 1) {
                return arr;
            }

            　　
            var pivotIndex = Math.floor(arr.length / 2);

            　　
            var pivot = arr.splice(pivotIndex, 1)[0];

            　　
            var left = [];

            　　
            var right = [];

            　　
            for (var i = 0; i < arr.length; i++) {

                　　　　
                if (arr[i] < pivot) {

                    　　　　　　
                    left.push(arr[i]);

                    　　　　
                } else {

                    　　　　　　
                    right.push(arr[i]);

                    　　　　
                }

                　　
            }

            　　
            return quickSort(left).concat([pivot], quickSort(right));
        };

        function sort() {
            var str1 = document.getElementById("test1").innerHTML;
            test1 = str1.split(',').map(Number);
            //console.log(quickSort(test1))
            document.getElementById("outs1").innerHTML = quickSort(test1)

            str = document.getElementById("test2").innerHTML;
            test2 = str.split(',').map(Number);
            document.getElementById("outs2").innerHTML = quickSort(test2)
        };
    </script>
</body>